home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 8: LINUX Games / Linux Cubed Series 8 - LINUX Games.iso / games / muds / pennmush.000 / pennmush-1.50-p8-linux.tar / pennmush / game / txt / news.txt < prev    next >
Text File  |  1993-04-22  |  8KB  |  188 lines

  1. & help
  2.  
  3. --------------------------- MUSH News Topics ------------------------------
  4.   
  5.    
  6. Code Information:     Code (4/21)       Changes (4/21)
  7.   
  8.  
  9. ---------------------------------------------------------------------------
  10.  
  11. & Code
  12.  
  13. The latest version of this MUSH code is available via anonymous FTP,
  14. at caisr2.caisr.cwru.edu, directory /pub/mush. It will be called
  15. something like pennmush-1.50.p8.tar.Z, or similar, depending on the
  16. version number.
  17.  
  18. Also in that directory is the MUSH manual. It should be called
  19. mushman.2.006.tar.Z or something similar; you should attempt to
  20. get at least version 2.006.
  21.  
  22. This code version is being maintained by Amberyl. Suggestions, comments,
  23. and bug reports are welcome; send email to lwl@eniac.seas.upenn.edu.
  24.   
  25. & Changes
  26.   
  27. This is a list of changes in this patchlevel which are probably of
  28. interest to players. More information about new commands and functions
  29. can probably be gotten via 'help <name of whatever>'.
  30.   
  31. Information about changes in prior releases can be found under
  32. "news patchlevel#", where "#" is the patchlevel number. Currently
  33. available old change listings: patchlevel6, patchlevel7.
  34.   
  35. Read "News changes2" to see the changes in the current patchlevel.
  36.  
  37. & Changes2
  38.  
  39. Major new features:
  40.   - Players can now set an @alias.
  41.  
  42. New additions:
  43.   - Player ZONE flag and ZoneMaster control provide "safer" zones.
  44.   - @hide command hides player from WHO list.
  45.   - @oemit can take a room dbref, behaving like @remit with an exception.
  46.   - mortal_dark and wizard attribute flags are settable. 'm' and 'w'.
  47.   - @pcreate power added.
  48.   - Channels can be wiped.
  49.  
  50. New functions:
  51.   - Visible(): can one object examine another object or attribute?
  52.   - Items(), Element(): like Words() and Match(), but for arbitrary separators.
  53.   - Delete(), Replace(), Insert(): list-manipulation, arbitrary separators.
  54.   - Orflags(), Andflags(): check multiple flags.
  55.   - Fullname(): full name of an object.
  56.   - Many floating point functions.
  57.  
  58. See "news Changes3" for more.
  59.  
  60. & Changes3
  61.  
  62. Other changes:
  63.   - Lattr() can take an <obj>/<wildcard> pattern.
  64.   - @prefix and @inprefix do pronoun substitution.
  65.   - @search can take an 'eval' parameter.
  66.   - No second arg to @lock or @link unlocks/unlinks.
  67.   - Mail() can now, for wizards, give info about other players' mail.
  68.   - Sort() now 'autodetects' sort type. Nsort() has been removed.
  69.   - Get_eval() is an alias for U() rather than Eval().
  70.   - Non-listening objects trigger @aenter and @aleave.
  71.   - @search, @find, and examine always ignore the MYOPIC flag.
  72.   - Queue deposits get refunded at startup.
  73.   - Words() uses ' ' as the delimiter, _not_ any whitespace.
  74.  
  75. See "news Changes4" for more.
  76.  
  77. & Changes4
  78.  
  79. Major bugfixes:
  80.   - Many problems with flags have been fixed.
  81.   - "#123's foo" is no longer matched the same as "#123".
  82.   - Switch() nesting behaves properly.
  83.   - Parser bug with '/' in pre-parsed attribute names fixed.
  84.   - Remove() no longer screws up on things like 'remove(#434 #43 #22,#43)'
  85.   - Index() and friends no longer screw up on null separators.
  86.   - Squish() trims leading spaces properly.
  87.   - Various bugs with setfunctions fixed.
  88.   - Function recursion bug fixed.
  89.   - @scan no longer chokes on '='.
  90.   - no_inherit attribute flag works for real.
  91.  
  92. & Patchlevel6
  93.  
  94. Patchlevel 6 Changes
  95.  
  96. Major bugfixes:
  97.   - Eval locks work with get(), ufun(), etc.
  98.   - Rooms can use @trigger again.
  99.   
  100. Changes to the parser:
  101.   - Spaces are no longer added around equals signs in 'say', 'pose', etc.
  102.   - The construction '<name of object> <command>' can no longer be used to
  103.     force a nearby object. '<dbref of object> <command>' still works.
  104.   - ITER() is much better-behaved; escapes and braces in the second
  105.     argument are no longer needed. It also now works properly with ufun().
  106.   - switch() can now take up to 100 arguments. Arguments to it are not
  107.     evaluated until needed.
  108.   
  109. Miscellaneous changes:
  110.   - Royalty can now set themselves DARK, but this affects _only_ their
  111.     visibility on the WHO list and related functions; they still appear
  112.     in the visible contents list of a room, on channel who, etc.
  113.   - Royalty can set themselves MONITOR.
  114.   - The TERSE flag suppresses _only_ auto-look messages (so if you type
  115.     'look here' while TERSE, you will get the description of the room).
  116.   - VAL() function returns the leading numeric prefix of a string.
  117.   - INDEX() is an extract()-like function which works for an arbitrary
  118.     character separator.
  119.   - WHERE() returns the "true" location of an object.
  120.   - HOME(), etc. now works on objects you do not control but are VISUAL.
  121.   - REPEAT() of something zero times returns a blank string, not an error.
  122.   - Commands done in GOING rooms are no longer considered invalid.
  123.   - "@parent <object>" by itself unparents an object.
  124.   - Exits in the same room as you are considered "nearby".
  125.   - All attribute fetches use the same permission checks. LINK_OK on a
  126.     zone object no longer allows zfun() to be done on the object if
  127.     the attribute cannot normally be read.
  128.   - Attribute flag sets added (@set obj/atr = flag). There are three
  129.     settable flags, 'visual', 'no_command', and 'no_inherit'. 'Examine'
  130.     displays these as 'v', '$', and 'i'.
  131.   - The lcon(), lexits(), con(), exit(), and next() functions now check
  132.     permissions differently. You can use these functions on a location 
  133.     that you own, or in a location that you are in and is not DARK.
  134.     If you cannot check the room, these functions will return #-1 even
  135.     if you have objects/exits in the room. This behavior is identical
  136.     to TinyMUSH 2.0's, and provides more privacy.
  137.   - 'examine' output for objects you don't control is now similar to
  138.     TinyMUSH 2.0's. The option to examine public attributes by default
  139.     is configurable.
  140.  
  141. & Patchlevel7
  142.  
  143. Patchlevel 7 Changes
  144.  
  145. Major new features:
  146.   - Powers system. Individual objects and players can be given the ability
  147.     to do special things, such as "examine anything", "teleport anywhere",
  148.     "boot players", etc. The BUILDER and IMMORTAL flags are now powers.
  149.   - Expanded flag system. Some flags are valid for more types of objects,
  150.     and flag lookups are quicker. The flag order is now alphabetized,
  151.     first by "generic" object type, then by specific object type.
  152.   - User-defined global functions, which behave just like built-in MUSH
  153.     functions, but are programmed in MUSH in a UFUN() format (i.e. you
  154.     can call them like any other function, i.e.  '@emit [my_function(foo)]')
  155.     The "@function" command is used to define and list these functions.
  156.   - Local variables (registers, numbered 0-9) which are retained for
  157.     the duration of a single command. Extremely useful for storing long
  158.     function evaluations, especially if you are programming "switchless".
  159.     The setq() and r() functions are used to set and retrieve the registers.
  160.   
  161. New additions:
  162.   - "no_clone" attribute flag (do not copy attribute when object is @clone'd)
  163.   - "@config/functions" lists all functions.
  164.  
  165. New functions:
  166.   - squish() removes leading and trailing spaces from a string, and crunches
  167.     inter-word spaces down to a single space.
  168.   - filter() returns members of a list for which a user-def'ed function
  169.     evalutes to true ("1").
  170.   - fold() recursively evaluates a user-def'ed function and list.
  171.   - rjust() and ljust() pad strings with spaces (or another fill character)
  172.   - nsort() sorts a list of numbers.
  173.   - shuffle() randomizes order of elements in a list.
  174.   - scramble() randomizes order of characters in a string.
  175.   
  176. Other changes:
  177.   - cat() can take an arbitrary number of arguments.
  178.   - conn() and idlesecs() now recognize #dbref and *player. idle() is now
  179.     an alias for idlesecs().
  180.   - "Exits:" line in examine is back.
  181.   - examine on non-existent attribute(s) returns "No matching attributes."
  182.   - NO_COMMAND doesn't block ^, since you have to set the LISTENER flag anyway.
  183.   - @config shows a couple more options.
  184.   - The QUIET flag suppresses "Drained.", "Notified.", and "Halted."
  185.   - Debug and Verbose output no longer clobber the stack.
  186.   - switch() and iter() nested within other functions works properly.
  187.   - Players cannot enter objects remotely via dbref.
  188.